package com.shelpe.services.simbasync.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class PurchaseOrderExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public PurchaseOrderExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andOrderIdIsNull() {
            addCriterion("order_id is null");
            return (Criteria) this;
        }

        public Criteria andOrderIdIsNotNull() {
            addCriterion("order_id is not null");
            return (Criteria) this;
        }

        public Criteria andOrderIdEqualTo(Long value) {
            addCriterion("order_id =", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotEqualTo(Long value) {
            addCriterion("order_id <>", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThan(Long value) {
            addCriterion("order_id >", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThanOrEqualTo(Long value) {
            addCriterion("order_id >=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThan(Long value) {
            addCriterion("order_id <", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThanOrEqualTo(Long value) {
            addCriterion("order_id <=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdIn(List<Long> values) {
            addCriterion("order_id in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotIn(List<Long> values) {
            addCriterion("order_id not in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdBetween(Long value1, Long value2) {
            addCriterion("order_id between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotBetween(Long value1, Long value2) {
            addCriterion("order_id not between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdIsNull() {
            addCriterion("biz_order_id is null");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdIsNotNull() {
            addCriterion("biz_order_id is not null");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdEqualTo(Long value) {
            addCriterion("biz_order_id =", value, "bizOrderId");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdNotEqualTo(Long value) {
            addCriterion("biz_order_id <>", value, "bizOrderId");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdGreaterThan(Long value) {
            addCriterion("biz_order_id >", value, "bizOrderId");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdGreaterThanOrEqualTo(Long value) {
            addCriterion("biz_order_id >=", value, "bizOrderId");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdLessThan(Long value) {
            addCriterion("biz_order_id <", value, "bizOrderId");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdLessThanOrEqualTo(Long value) {
            addCriterion("biz_order_id <=", value, "bizOrderId");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdIn(List<Long> values) {
            addCriterion("biz_order_id in", values, "bizOrderId");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdNotIn(List<Long> values) {
            addCriterion("biz_order_id not in", values, "bizOrderId");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdBetween(Long value1, Long value2) {
            addCriterion("biz_order_id between", value1, value2, "bizOrderId");
            return (Criteria) this;
        }

        public Criteria andBizOrderIdNotBetween(Long value1, Long value2) {
            addCriterion("biz_order_id not between", value1, value2, "bizOrderId");
            return (Criteria) this;
        }

        public Criteria andNickIsNull() {
            addCriterion("nick is null");
            return (Criteria) this;
        }

        public Criteria andNickIsNotNull() {
            addCriterion("nick is not null");
            return (Criteria) this;
        }

        public Criteria andNickEqualTo(String value) {
            addCriterion("nick =", value, "nick");
            return (Criteria) this;
        }

        public Criteria andNickNotEqualTo(String value) {
            addCriterion("nick <>", value, "nick");
            return (Criteria) this;
        }

        public Criteria andNickGreaterThan(String value) {
            addCriterion("nick >", value, "nick");
            return (Criteria) this;
        }

        public Criteria andNickGreaterThanOrEqualTo(String value) {
            addCriterion("nick >=", value, "nick");
            return (Criteria) this;
        }

        public Criteria andNickLessThan(String value) {
            addCriterion("nick <", value, "nick");
            return (Criteria) this;
        }

        public Criteria andNickLessThanOrEqualTo(String value) {
            addCriterion("nick <=", value, "nick");
            return (Criteria) this;
        }

        public Criteria andNickLike(String value) {
            addCriterion("nick like", value, "nick");
            return (Criteria) this;
        }

        public Criteria andNickNotLike(String value) {
            addCriterion("nick not like", value, "nick");
            return (Criteria) this;
        }

        public Criteria andNickIn(List<String> values) {
            addCriterion("nick in", values, "nick");
            return (Criteria) this;
        }

        public Criteria andNickNotIn(List<String> values) {
            addCriterion("nick not in", values, "nick");
            return (Criteria) this;
        }

        public Criteria andNickBetween(String value1, String value2) {
            addCriterion("nick between", value1, value2, "nick");
            return (Criteria) this;
        }

        public Criteria andNickNotBetween(String value1, String value2) {
            addCriterion("nick not between", value1, value2, "nick");
            return (Criteria) this;
        }

        public Criteria andArticleNameIsNull() {
            addCriterion("article_name is null");
            return (Criteria) this;
        }

        public Criteria andArticleNameIsNotNull() {
            addCriterion("article_name is not null");
            return (Criteria) this;
        }

        public Criteria andArticleNameEqualTo(String value) {
            addCriterion("article_name =", value, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleNameNotEqualTo(String value) {
            addCriterion("article_name <>", value, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleNameGreaterThan(String value) {
            addCriterion("article_name >", value, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleNameGreaterThanOrEqualTo(String value) {
            addCriterion("article_name >=", value, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleNameLessThan(String value) {
            addCriterion("article_name <", value, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleNameLessThanOrEqualTo(String value) {
            addCriterion("article_name <=", value, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleNameLike(String value) {
            addCriterion("article_name like", value, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleNameNotLike(String value) {
            addCriterion("article_name not like", value, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleNameIn(List<String> values) {
            addCriterion("article_name in", values, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleNameNotIn(List<String> values) {
            addCriterion("article_name not in", values, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleNameBetween(String value1, String value2) {
            addCriterion("article_name between", value1, value2, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleNameNotBetween(String value1, String value2) {
            addCriterion("article_name not between", value1, value2, "articleName");
            return (Criteria) this;
        }

        public Criteria andArticleCodeIsNull() {
            addCriterion("article_code is null");
            return (Criteria) this;
        }

        public Criteria andArticleCodeIsNotNull() {
            addCriterion("article_code is not null");
            return (Criteria) this;
        }

        public Criteria andArticleCodeEqualTo(String value) {
            addCriterion("article_code =", value, "articleCode");
            return (Criteria) this;
        }

        public Criteria andArticleCodeNotEqualTo(String value) {
            addCriterion("article_code <>", value, "articleCode");
            return (Criteria) this;
        }

        public Criteria andArticleCodeGreaterThan(String value) {
            addCriterion("article_code >", value, "articleCode");
            return (Criteria) this;
        }

        public Criteria andArticleCodeGreaterThanOrEqualTo(String value) {
            addCriterion("article_code >=", value, "articleCode");
            return (Criteria) this;
        }

        public Criteria andArticleCodeLessThan(String value) {
            addCriterion("article_code <", value, "articleCode");
            return (Criteria) this;
        }

        public Criteria andArticleCodeLessThanOrEqualTo(String value) {
            addCriterion("article_code <=", value, "articleCode");
            return (Criteria) this;
        }

        public Criteria andArticleCodeLike(String value) {
            addCriterion("article_code like", value, "articleCode");
            return (Criteria) this;
        }

        public Criteria andArticleCodeNotLike(String value) {
            addCriterion("article_code not like", value, "articleCode");
            return (Criteria) this;
        }

        public Criteria andArticleCodeIn(List<String> values) {
            addCriterion("article_code in", values, "articleCode");
            return (Criteria) this;
        }

        public Criteria andArticleCodeNotIn(List<String> values) {
            addCriterion("article_code not in", values, "articleCode");
            return (Criteria) this;
        }

        public Criteria andArticleCodeBetween(String value1, String value2) {
            addCriterion("article_code between", value1, value2, "articleCode");
            return (Criteria) this;
        }

        public Criteria andArticleCodeNotBetween(String value1, String value2) {
            addCriterion("article_code not between", value1, value2, "articleCode");
            return (Criteria) this;
        }

        public Criteria andItemNameIsNull() {
            addCriterion("item_name is null");
            return (Criteria) this;
        }

        public Criteria andItemNameIsNotNull() {
            addCriterion("item_name is not null");
            return (Criteria) this;
        }

        public Criteria andItemNameEqualTo(String value) {
            addCriterion("item_name =", value, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemNameNotEqualTo(String value) {
            addCriterion("item_name <>", value, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemNameGreaterThan(String value) {
            addCriterion("item_name >", value, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemNameGreaterThanOrEqualTo(String value) {
            addCriterion("item_name >=", value, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemNameLessThan(String value) {
            addCriterion("item_name <", value, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemNameLessThanOrEqualTo(String value) {
            addCriterion("item_name <=", value, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemNameLike(String value) {
            addCriterion("item_name like", value, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemNameNotLike(String value) {
            addCriterion("item_name not like", value, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemNameIn(List<String> values) {
            addCriterion("item_name in", values, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemNameNotIn(List<String> values) {
            addCriterion("item_name not in", values, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemNameBetween(String value1, String value2) {
            addCriterion("item_name between", value1, value2, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemNameNotBetween(String value1, String value2) {
            addCriterion("item_name not between", value1, value2, "itemName");
            return (Criteria) this;
        }

        public Criteria andItemCodeIsNull() {
            addCriterion("item_code is null");
            return (Criteria) this;
        }

        public Criteria andItemCodeIsNotNull() {
            addCriterion("item_code is not null");
            return (Criteria) this;
        }

        public Criteria andItemCodeEqualTo(String value) {
            addCriterion("item_code =", value, "itemCode");
            return (Criteria) this;
        }

        public Criteria andItemCodeNotEqualTo(String value) {
            addCriterion("item_code <>", value, "itemCode");
            return (Criteria) this;
        }

        public Criteria andItemCodeGreaterThan(String value) {
            addCriterion("item_code >", value, "itemCode");
            return (Criteria) this;
        }

        public Criteria andItemCodeGreaterThanOrEqualTo(String value) {
            addCriterion("item_code >=", value, "itemCode");
            return (Criteria) this;
        }

        public Criteria andItemCodeLessThan(String value) {
            addCriterion("item_code <", value, "itemCode");
            return (Criteria) this;
        }

        public Criteria andItemCodeLessThanOrEqualTo(String value) {
            addCriterion("item_code <=", value, "itemCode");
            return (Criteria) this;
        }

        public Criteria andItemCodeLike(String value) {
            addCriterion("item_code like", value, "itemCode");
            return (Criteria) this;
        }

        public Criteria andItemCodeNotLike(String value) {
            addCriterion("item_code not like", value, "itemCode");
            return (Criteria) this;
        }

        public Criteria andItemCodeIn(List<String> values) {
            addCriterion("item_code in", values, "itemCode");
            return (Criteria) this;
        }

        public Criteria andItemCodeNotIn(List<String> values) {
            addCriterion("item_code not in", values, "itemCode");
            return (Criteria) this;
        }

        public Criteria andItemCodeBetween(String value1, String value2) {
            addCriterion("item_code between", value1, value2, "itemCode");
            return (Criteria) this;
        }

        public Criteria andItemCodeNotBetween(String value1, String value2) {
            addCriterion("item_code not between", value1, value2, "itemCode");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andOrderCycleIsNull() {
            addCriterion("order_cycle is null");
            return (Criteria) this;
        }

        public Criteria andOrderCycleIsNotNull() {
            addCriterion("order_cycle is not null");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEqualTo(Integer value) {
            addCriterion("order_cycle =", value, "orderCycle");
            return (Criteria) this;
        }

        public Criteria andOrderCycleNotEqualTo(Integer value) {
            addCriterion("order_cycle <>", value, "orderCycle");
            return (Criteria) this;
        }

        public Criteria andOrderCycleGreaterThan(Integer value) {
            addCriterion("order_cycle >", value, "orderCycle");
            return (Criteria) this;
        }

        public Criteria andOrderCycleGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_cycle >=", value, "orderCycle");
            return (Criteria) this;
        }

        public Criteria andOrderCycleLessThan(Integer value) {
            addCriterion("order_cycle <", value, "orderCycle");
            return (Criteria) this;
        }

        public Criteria andOrderCycleLessThanOrEqualTo(Integer value) {
            addCriterion("order_cycle <=", value, "orderCycle");
            return (Criteria) this;
        }

        public Criteria andOrderCycleIn(List<Integer> values) {
            addCriterion("order_cycle in", values, "orderCycle");
            return (Criteria) this;
        }

        public Criteria andOrderCycleNotIn(List<Integer> values) {
            addCriterion("order_cycle not in", values, "orderCycle");
            return (Criteria) this;
        }

        public Criteria andOrderCycleBetween(Integer value1, Integer value2) {
            addCriterion("order_cycle between", value1, value2, "orderCycle");
            return (Criteria) this;
        }

        public Criteria andOrderCycleNotBetween(Integer value1, Integer value2) {
            addCriterion("order_cycle not between", value1, value2, "orderCycle");
            return (Criteria) this;
        }

        public Criteria andOrderStatusIsNull() {
            addCriterion("order_status is null");
            return (Criteria) this;
        }

        public Criteria andOrderStatusIsNotNull() {
            addCriterion("order_status is not null");
            return (Criteria) this;
        }

        public Criteria andOrderStatusEqualTo(Integer value) {
            addCriterion("order_status =", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusNotEqualTo(Integer value) {
            addCriterion("order_status <>", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusGreaterThan(Integer value) {
            addCriterion("order_status >", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_status >=", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusLessThan(Integer value) {
            addCriterion("order_status <", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusLessThanOrEqualTo(Integer value) {
            addCriterion("order_status <=", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusIn(List<Integer> values) {
            addCriterion("order_status in", values, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusNotIn(List<Integer> values) {
            addCriterion("order_status not in", values, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusBetween(Integer value1, Integer value2) {
            addCriterion("order_status between", value1, value2, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("order_status not between", value1, value2, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartIsNull() {
            addCriterion("order_cycle_start is null");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartIsNotNull() {
            addCriterion("order_cycle_start is not null");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartEqualTo(Date value) {
            addCriterion("order_cycle_start =", value, "orderCycleStart");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartNotEqualTo(Date value) {
            addCriterion("order_cycle_start <>", value, "orderCycleStart");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartGreaterThan(Date value) {
            addCriterion("order_cycle_start >", value, "orderCycleStart");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartGreaterThanOrEqualTo(Date value) {
            addCriterion("order_cycle_start >=", value, "orderCycleStart");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartLessThan(Date value) {
            addCriterion("order_cycle_start <", value, "orderCycleStart");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartLessThanOrEqualTo(Date value) {
            addCriterion("order_cycle_start <=", value, "orderCycleStart");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartIn(List<Date> values) {
            addCriterion("order_cycle_start in", values, "orderCycleStart");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartNotIn(List<Date> values) {
            addCriterion("order_cycle_start not in", values, "orderCycleStart");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartBetween(Date value1, Date value2) {
            addCriterion("order_cycle_start between", value1, value2, "orderCycleStart");
            return (Criteria) this;
        }

        public Criteria andOrderCycleStartNotBetween(Date value1, Date value2) {
            addCriterion("order_cycle_start not between", value1, value2, "orderCycleStart");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndIsNull() {
            addCriterion("order_cycle_end is null");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndIsNotNull() {
            addCriterion("order_cycle_end is not null");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndEqualTo(Date value) {
            addCriterion("order_cycle_end =", value, "orderCycleEnd");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndNotEqualTo(Date value) {
            addCriterion("order_cycle_end <>", value, "orderCycleEnd");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndGreaterThan(Date value) {
            addCriterion("order_cycle_end >", value, "orderCycleEnd");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndGreaterThanOrEqualTo(Date value) {
            addCriterion("order_cycle_end >=", value, "orderCycleEnd");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndLessThan(Date value) {
            addCriterion("order_cycle_end <", value, "orderCycleEnd");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndLessThanOrEqualTo(Date value) {
            addCriterion("order_cycle_end <=", value, "orderCycleEnd");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndIn(List<Date> values) {
            addCriterion("order_cycle_end in", values, "orderCycleEnd");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndNotIn(List<Date> values) {
            addCriterion("order_cycle_end not in", values, "orderCycleEnd");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndBetween(Date value1, Date value2) {
            addCriterion("order_cycle_end between", value1, value2, "orderCycleEnd");
            return (Criteria) this;
        }

        public Criteria andOrderCycleEndNotBetween(Date value1, Date value2) {
            addCriterion("order_cycle_end not between", value1, value2, "orderCycleEnd");
            return (Criteria) this;
        }

        public Criteria andBizTypeIsNull() {
            addCriterion("biz_type is null");
            return (Criteria) this;
        }

        public Criteria andBizTypeIsNotNull() {
            addCriterion("biz_type is not null");
            return (Criteria) this;
        }

        public Criteria andBizTypeEqualTo(Integer value) {
            addCriterion("biz_type =", value, "bizType");
            return (Criteria) this;
        }

        public Criteria andBizTypeNotEqualTo(Integer value) {
            addCriterion("biz_type <>", value, "bizType");
            return (Criteria) this;
        }

        public Criteria andBizTypeGreaterThan(Integer value) {
            addCriterion("biz_type >", value, "bizType");
            return (Criteria) this;
        }

        public Criteria andBizTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("biz_type >=", value, "bizType");
            return (Criteria) this;
        }

        public Criteria andBizTypeLessThan(Integer value) {
            addCriterion("biz_type <", value, "bizType");
            return (Criteria) this;
        }

        public Criteria andBizTypeLessThanOrEqualTo(Integer value) {
            addCriterion("biz_type <=", value, "bizType");
            return (Criteria) this;
        }

        public Criteria andBizTypeIn(List<Integer> values) {
            addCriterion("biz_type in", values, "bizType");
            return (Criteria) this;
        }

        public Criteria andBizTypeNotIn(List<Integer> values) {
            addCriterion("biz_type not in", values, "bizType");
            return (Criteria) this;
        }

        public Criteria andBizTypeBetween(Integer value1, Integer value2) {
            addCriterion("biz_type between", value1, value2, "bizType");
            return (Criteria) this;
        }

        public Criteria andBizTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("biz_type not between", value1, value2, "bizType");
            return (Criteria) this;
        }

        public Criteria andFeeIsNull() {
            addCriterion("fee is null");
            return (Criteria) this;
        }

        public Criteria andFeeIsNotNull() {
            addCriterion("fee is not null");
            return (Criteria) this;
        }

        public Criteria andFeeEqualTo(Float value) {
            addCriterion("fee =", value, "fee");
            return (Criteria) this;
        }

        public Criteria andFeeNotEqualTo(Float value) {
            addCriterion("fee <>", value, "fee");
            return (Criteria) this;
        }

        public Criteria andFeeGreaterThan(Float value) {
            addCriterion("fee >", value, "fee");
            return (Criteria) this;
        }

        public Criteria andFeeGreaterThanOrEqualTo(Float value) {
            addCriterion("fee >=", value, "fee");
            return (Criteria) this;
        }

        public Criteria andFeeLessThan(Float value) {
            addCriterion("fee <", value, "fee");
            return (Criteria) this;
        }

        public Criteria andFeeLessThanOrEqualTo(Float value) {
            addCriterion("fee <=", value, "fee");
            return (Criteria) this;
        }

        public Criteria andFeeIn(List<Float> values) {
            addCriterion("fee in", values, "fee");
            return (Criteria) this;
        }

        public Criteria andFeeNotIn(List<Float> values) {
            addCriterion("fee not in", values, "fee");
            return (Criteria) this;
        }

        public Criteria andFeeBetween(Float value1, Float value2) {
            addCriterion("fee between", value1, value2, "fee");
            return (Criteria) this;
        }

        public Criteria andFeeNotBetween(Float value1, Float value2) {
            addCriterion("fee not between", value1, value2, "fee");
            return (Criteria) this;
        }

        public Criteria andPromFeeIsNull() {
            addCriterion("prom_fee is null");
            return (Criteria) this;
        }

        public Criteria andPromFeeIsNotNull() {
            addCriterion("prom_fee is not null");
            return (Criteria) this;
        }

        public Criteria andPromFeeEqualTo(Float value) {
            addCriterion("prom_fee =", value, "promFee");
            return (Criteria) this;
        }

        public Criteria andPromFeeNotEqualTo(Float value) {
            addCriterion("prom_fee <>", value, "promFee");
            return (Criteria) this;
        }

        public Criteria andPromFeeGreaterThan(Float value) {
            addCriterion("prom_fee >", value, "promFee");
            return (Criteria) this;
        }

        public Criteria andPromFeeGreaterThanOrEqualTo(Float value) {
            addCriterion("prom_fee >=", value, "promFee");
            return (Criteria) this;
        }

        public Criteria andPromFeeLessThan(Float value) {
            addCriterion("prom_fee <", value, "promFee");
            return (Criteria) this;
        }

        public Criteria andPromFeeLessThanOrEqualTo(Float value) {
            addCriterion("prom_fee <=", value, "promFee");
            return (Criteria) this;
        }

        public Criteria andPromFeeIn(List<Float> values) {
            addCriterion("prom_fee in", values, "promFee");
            return (Criteria) this;
        }

        public Criteria andPromFeeNotIn(List<Float> values) {
            addCriterion("prom_fee not in", values, "promFee");
            return (Criteria) this;
        }

        public Criteria andPromFeeBetween(Float value1, Float value2) {
            addCriterion("prom_fee between", value1, value2, "promFee");
            return (Criteria) this;
        }

        public Criteria andPromFeeNotBetween(Float value1, Float value2) {
            addCriterion("prom_fee not between", value1, value2, "promFee");
            return (Criteria) this;
        }

        public Criteria andRefundFeeIsNull() {
            addCriterion("refund_fee is null");
            return (Criteria) this;
        }

        public Criteria andRefundFeeIsNotNull() {
            addCriterion("refund_fee is not null");
            return (Criteria) this;
        }

        public Criteria andRefundFeeEqualTo(Float value) {
            addCriterion("refund_fee =", value, "refundFee");
            return (Criteria) this;
        }

        public Criteria andRefundFeeNotEqualTo(Float value) {
            addCriterion("refund_fee <>", value, "refundFee");
            return (Criteria) this;
        }

        public Criteria andRefundFeeGreaterThan(Float value) {
            addCriterion("refund_fee >", value, "refundFee");
            return (Criteria) this;
        }

        public Criteria andRefundFeeGreaterThanOrEqualTo(Float value) {
            addCriterion("refund_fee >=", value, "refundFee");
            return (Criteria) this;
        }

        public Criteria andRefundFeeLessThan(Float value) {
            addCriterion("refund_fee <", value, "refundFee");
            return (Criteria) this;
        }

        public Criteria andRefundFeeLessThanOrEqualTo(Float value) {
            addCriterion("refund_fee <=", value, "refundFee");
            return (Criteria) this;
        }

        public Criteria andRefundFeeIn(List<Float> values) {
            addCriterion("refund_fee in", values, "refundFee");
            return (Criteria) this;
        }

        public Criteria andRefundFeeNotIn(List<Float> values) {
            addCriterion("refund_fee not in", values, "refundFee");
            return (Criteria) this;
        }

        public Criteria andRefundFeeBetween(Float value1, Float value2) {
            addCriterion("refund_fee between", value1, value2, "refundFee");
            return (Criteria) this;
        }

        public Criteria andRefundFeeNotBetween(Float value1, Float value2) {
            addCriterion("refund_fee not between", value1, value2, "refundFee");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeIsNull() {
            addCriterion("total_pay_fee is null");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeIsNotNull() {
            addCriterion("total_pay_fee is not null");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeEqualTo(Float value) {
            addCriterion("total_pay_fee =", value, "totalPayFee");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeNotEqualTo(Float value) {
            addCriterion("total_pay_fee <>", value, "totalPayFee");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeGreaterThan(Float value) {
            addCriterion("total_pay_fee >", value, "totalPayFee");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeGreaterThanOrEqualTo(Float value) {
            addCriterion("total_pay_fee >=", value, "totalPayFee");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeLessThan(Float value) {
            addCriterion("total_pay_fee <", value, "totalPayFee");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeLessThanOrEqualTo(Float value) {
            addCriterion("total_pay_fee <=", value, "totalPayFee");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeIn(List<Float> values) {
            addCriterion("total_pay_fee in", values, "totalPayFee");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeNotIn(List<Float> values) {
            addCriterion("total_pay_fee not in", values, "totalPayFee");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeBetween(Float value1, Float value2) {
            addCriterion("total_pay_fee between", value1, value2, "totalPayFee");
            return (Criteria) this;
        }

        public Criteria andTotalPayFeeNotBetween(Float value1, Float value2) {
            addCriterion("total_pay_fee not between", value1, value2, "totalPayFee");
            return (Criteria) this;
        }

        public Criteria andPayStatusIsNull() {
            addCriterion("pay_status is null");
            return (Criteria) this;
        }

        public Criteria andPayStatusIsNotNull() {
            addCriterion("pay_status is not null");
            return (Criteria) this;
        }

        public Criteria andPayStatusEqualTo(Integer value) {
            addCriterion("pay_status =", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusNotEqualTo(Integer value) {
            addCriterion("pay_status <>", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusGreaterThan(Integer value) {
            addCriterion("pay_status >", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("pay_status >=", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusLessThan(Integer value) {
            addCriterion("pay_status <", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusLessThanOrEqualTo(Integer value) {
            addCriterion("pay_status <=", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusIn(List<Integer> values) {
            addCriterion("pay_status in", values, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusNotIn(List<Integer> values) {
            addCriterion("pay_status not in", values, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusBetween(Integer value1, Integer value2) {
            addCriterion("pay_status between", value1, value2, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("pay_status not between", value1, value2, "payStatus");
            return (Criteria) this;
        }

        public Criteria andVersionNoIsNull() {
            addCriterion("version_no is null");
            return (Criteria) this;
        }

        public Criteria andVersionNoIsNotNull() {
            addCriterion("version_no is not null");
            return (Criteria) this;
        }

        public Criteria andVersionNoEqualTo(Integer value) {
            addCriterion("version_no =", value, "versionNo");
            return (Criteria) this;
        }

        public Criteria andVersionNoNotEqualTo(Integer value) {
            addCriterion("version_no <>", value, "versionNo");
            return (Criteria) this;
        }

        public Criteria andVersionNoGreaterThan(Integer value) {
            addCriterion("version_no >", value, "versionNo");
            return (Criteria) this;
        }

        public Criteria andVersionNoGreaterThanOrEqualTo(Integer value) {
            addCriterion("version_no >=", value, "versionNo");
            return (Criteria) this;
        }

        public Criteria andVersionNoLessThan(Integer value) {
            addCriterion("version_no <", value, "versionNo");
            return (Criteria) this;
        }

        public Criteria andVersionNoLessThanOrEqualTo(Integer value) {
            addCriterion("version_no <=", value, "versionNo");
            return (Criteria) this;
        }

        public Criteria andVersionNoIn(List<Integer> values) {
            addCriterion("version_no in", values, "versionNo");
            return (Criteria) this;
        }

        public Criteria andVersionNoNotIn(List<Integer> values) {
            addCriterion("version_no not in", values, "versionNo");
            return (Criteria) this;
        }

        public Criteria andVersionNoBetween(Integer value1, Integer value2) {
            addCriterion("version_no between", value1, value2, "versionNo");
            return (Criteria) this;
        }

        public Criteria andVersionNoNotBetween(Integer value1, Integer value2) {
            addCriterion("version_no not between", value1, value2, "versionNo");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}